package com.yugao.fintech.draper.auth.api;

import com.yugao.fintech.draper.auth.dto.UserInfoVO;
import com.yugao.fintech.draper.common.constant.ServerConstant;
import com.yugao.fintech.draper.core.constant.SecurityConstants;
import com.yugao.fintech.draper.core.model.ResultVO;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestHeader;

@FeignClient(contextId = "userFeignApi", value = ServerConstant.DRAPER_ADMIN)
public interface UserFeignApi {

	/**
	 * 通过用户名查找用户信息
	 * @param username 用户名
	 * @return 用户信息
	 */
	@GetMapping("/user/findByName/{username}")
	ResultVO<UserInfoVO> findByName(@PathVariable("username") String username, @RequestHeader(SecurityConstants.FROM) String from);

	/**
	 * 通过手机号查找用户信息
	 * @param mobile 手机号
	 * @return 用户信息
	 */
	@GetMapping("/user/findByMobile/{mobile}")
    ResultVO<UserInfoVO> findByMobile(@PathVariable("mobile") String mobile, @RequestHeader(SecurityConstants.FROM) String from);

}
